package com.yami.shop.bean.model;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 店铺设置
 */
@Data
@TableName("yy_shop_setting")
@ApiModel("店铺设置")
public class ShopSetting implements Serializable {
    
    private static final long serialVersionUID = 1L;

    /**
     * 店铺ID
     */
    @ApiModelProperty("店铺ID")
    @TableId(type = IdType.INPUT)
    private Long shopId;

    /**
     * 代理功能状态（0-关闭 1-开启）
     */
    @ApiModelProperty("代理功能状态（0-关闭 1-开启）")
    private Integer agentStatus;

    /**
     * 店铺对接码
     */
    @ApiModelProperty("店铺对接码")
    private String shopCode;

    /**
     * 是否审核（0-未审核 1-已审核）
     */
    @ApiModelProperty("代理是否需要审核（0-不需要 1-需要）")
    private Integer auditStatus;
    
    /**
     * 店铺开关（0-关闭 1-开启）
     */
    @ApiModelProperty("店铺开关（0-关闭 1-开启）")
    private Integer shopStatus;
    
    /**
     * 商户QQ号
     */
    @ApiModelProperty("商户QQ号")
    private String merchantQq;
    
    /**
     * 商户群链接
     */
    @ApiModelProperty("商户群链接")
    private String merchantGroupLink;
    
    /**
     * 在线客服链接
     */
    @ApiModelProperty("在线客服链接")
    private String customerServiceLink;
    
    /**
     * 商铺公告
     */
    @ApiModelProperty("商铺公告")
    private String shopAnnouncement;
    
    /**
     * 商家公告是否自动弹窗（0-不弹窗 1-弹窗）
     */
    @ApiModelProperty("商家公告是否自动弹窗（0-不弹窗 1-弹窗）")
    private Integer announcementPopup;
    
    /**
     * 库存展示方式（0-实际库存 1-范围库存）
     */
    @ApiModelProperty("库存展示方式（0-实际库存 1-范围库存）")
    private Integer stockDisplayMode;
    
    /**
     * 销量展示方式（0-实际销量 1-范围销量 2-不展示销量）
     */
    @ApiModelProperty("销量展示方式（0-实际销量 1-范围销量 2-不展示销量）")
    private Integer salesDisplayMode;
    
    /**
     * 费率承担方（0-跟随系统 1-商家承担 2-买家承担）
     */
    @ApiModelProperty("费率承担方（0-跟随系统 1-商家承担 2-买家承担）")
    private Integer feeBearer;
    
    /**
     * 下单是否锁卡（0-关闭 1-开启）
     */
    @ApiModelProperty("下单是否锁卡（0-关闭 1-开启）")
    private Integer orderLockCard;
    
    /**
     * 锁卡订单超时分钟
     */
    @ApiModelProperty("锁卡订单超时分钟")
    private Integer lockCardTimeout;
    
    /**
     * 是否开启安全登录（0-关闭 1-开启）
     */
    @ApiModelProperty("是否开启安全登录（0-关闭 1-开启）")
    private Integer secureLoginEnabled;
    
    /**
     * 安全验证方式（0-邮箱验证 1-谷歌验证器）
     */
    @ApiModelProperty("安全验证方式（0-邮箱验证 1-谷歌验证器）")
    private Integer securityVerificationMethod;

    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    @ApiModelProperty("更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime updateTime;
} 